#ifndef SPAWNUNITDATA_H
#define SPAWNUNITDATA_H

#include <string>
#include "Vector2df.h"
#include "PenjinTypes.h"

enum SPAWN_STATUS
{
    ssNotSpawned,
    ssSpawned,
    ssDead
};

enum UNIT_TYPE
{
    utSprite,
    utGeneric,
    utTrigger
};

class SpawnUnitData
{
public:
    SpawnUnitData(CRstring classname, const UNIT_TYPE& type, CRfloat spawnPosX, CRfloat spawnPosY, CRfloat spawnVelX, CRfloat spawnVelY, CRstring parameter, CRbool respawn)
    {
        this->classname = classname;
        this->type = type;
        this->spawnPos = Vector2df(spawnPosX,spawnPosY);
        this->spawnVel = Vector2df(spawnVelX,spawnVelY);
        this->parameter = parameter;
        this->status = ssNotSpawned;
        this->respawn = respawn;
    };
    ~SpawnUnitData(){};
    Vector2df spawnPos;
    Vector2df spawnVel; // size for triggers
    string classname;
    UNIT_TYPE type;
    string parameter;
    SPAWN_STATUS status;
    bool respawn;
};

#endif
